using MyHomeworkWebAPi.Models.ef;
using MyHomeworkWebAPi.Models.Request;

namespace MyHomeworkWebAPi.Services
{
    /// <summary>
    /// 订单服务接口
    /// </summary>
    public interface IOrderServices
    {
        /// <summary>
        /// 获取所有订单
        /// </summary>
        Task<List<Order>> GetAllAsync();

        /// <summary>
        /// 根据ID获取订单
        /// </summary>
        Task<Order> GetByIdAsync(Guid orderId);

        /// <summary>
        /// 创建订单
        /// </summary>
        Task<Order> CreateAsync(OrderCreateRequest request);

        /// <summary>
        /// 更新订单状态
        /// </summary>
        Task<Order> UpdateStatusAsync(Guid orderId, string status);

        /// <summary>
        /// 获取用户的订单列表（买家）
        /// </summary>
        Task<List<Order>> GetByUserIdAsync(Guid userId);

        /// <summary>
        /// 获取商品的订单列表
        /// </summary>
        Task<List<Order>> GetByProductIdAsync(Guid productId);
    }
} 